#pragma once
#include "DynLib.h"
#include <map>
#include <string>

BEGIN_NAMESPACE_CPPX

typedef std::map<std::string,DynLib*> DynLibMap;

class DynLibManager
{
	DynLibMap m_DynLibs;

public:
	~DynLibManager(void);

	DynLibMap & DynLibs() { return m_DynLibs; }

	DynLib* find_dynlib(const std::string & name);
	DynLib* load_dynlib(const std::string & name);
	void    unload_dynlib( DynLib *& pLib );
};

END_NAMESPACE_CPPX
